\documentclass{standalone}
\usepackage{tikz}
\usepackage{ctex,siunitx}
\setCJKmainfont{Noto Serif CJK SC}
\usepackage{tkz-euclide}
\usepackage{amsmath}
\usepackage{wasysym}
\usepackage{circuitikz}
\usetikzlibrary{patterns, calc}
\usetikzlibrary {decorations.pathmorphing, decorations.pathreplacing, decorations.shapes}
\ctikzset{bipoles/length=1cm}
\begin{document}
\small
\begin{circuitikz}[>=latex, scale=1,european]
  % \useasboundingbox(0.9,0)rectangle(5.1,5);
  \begin{scope}
    \draw (0, -0.5) to(0,-1) node [ground]{} ;
    \draw (-0.5,-0.5)rectangle(0.5,0.5);
    \draw (0, 0.5) to(0,2) node [bareantenna]{} ;
    \draw (-0.5,-0.15)rectangle (-1.2,-0.35);
    \draw (0,-0.15)-- ++(-60:0.8)node[right]{发射机};
    \draw (-1.0,0)circle(0.15)node[above=1mm]{光电管};
  \end{scope}
  \begin{scope}[xshift=3cm]
    \draw (0, -0.5) to(0,-1) node [ground]{} ;
    \draw (-0.5,-0.5)rectangle(0.5,0.5);
    \draw (0, 0.5) to(0,2) node [bareantenna]{} ;
    \draw (0.5,-0.15)rectangle (1.2,-0.35);
    \draw (0,0.15)-- ++(120:0.8)node[left]{接收机};
    \draw (1.0,0)circle(0.15)node[above=1mm]{辉光管};
  \end{scope}
  \foreach \x in {-2.5,5.5}
  {\begin{scope}[xshift=\x cm]
    \draw[fill=cyan!20!white](0,0.5)to[bend right=15](0,-0.5)to[bend right=15](0,0.5);
    \draw[postaction={decorate},decoration={markings,mark=at position 0.35 with {\arrow{>}}}](-1.5,0)--(0,0.5)--(1.5,0);
    \draw[postaction={decorate},decoration={markings,mark=at position 0.35 with {\arrow{>}}}](-1.5,0)--(1.5,0);
    \draw[postaction={decorate},decoration={markings,mark=at position 0.35 with {\arrow{>}}}](-1.5,0)--(0,-0.5)--(1.5,0);
    \node at (0,0.5)[above]{凸透镜};
  \end{scope}}
  \begin{scope}[xshift=6cm,yshift=-1.5cm]
    \draw(0,0)circle(0.6);
    \draw(0,0)circle(0.3);
    \draw[-stealth](120:0.45)arc(120:60:0.45);
    \node at (-30:0.8)[right]{转动筒};
    \node at (1.2,0.3)[right]{感光纸};
    \draw(135:0.6)--++(45:2.0)arc(135:-45:0.6)--++(-135:2.0);
  \end{scope}
  \begin{scope}[xshift=-5cm,yshift=-1.5cm]
    \draw(0,0)circle(0.6);
    \draw(0,0)circle(0.3);
    \draw[-stealth](120:0.45)arc(120:60:0.45);
    \node at (-30:0.8)[right]{转动筒};
    \draw(135:0.6)--++(45:2.0)arc(135:-45:0.6)--++(-135:2.0);
    \foreach \x in {0.3,1.7}
    {
      \draw([shift=(45:\x)]90:0.6)arc(90:30:0.6);
    }
    \foreach \x in {0.5,0.9,1.1,1.5}
    {
      \draw([shift=(45:\x)]75:0.6)arc(75:30:0.6);
    }
    \draw([shift=(45:0.3)]90:0.6)--++(45:1.4);
    \draw([shift=(45:0.5)]75:0.6)--++(45:0.4);
    \draw([shift=(45:1.1)]75:0.6)--++(45:0.4);
    \draw([shift=(45:0.3)]30:0.6)--++(45:0.2);
    \draw([shift=(45:0.9)]30:0.6)--++(45:0.2);
    \draw([shift=(45:1.5)]30:0.6)--++(45:0.2);
  \end{scope}
\end{circuitikz}
\end{document}